{{tag>Intrepid serveur réseau système tutoriel BROUILLON}}

----

====== Installation d'un serveur mercurial ======

<note help>Cette page vous présente comment installer un serveur Mercurial sur un système linux ayant APT ainsi que comment l'utiliser.</note>

<note tip>
Mercurial est un outil de gestion de versions décentralisés comme git, Bazaar, Darcs, Monotone, SVK ou GNU Arch.\\
Pourquoi mercurial ? Il est très facile à mettre en place et à utiliser.
</note>

===== Pré-requis =====

  * Disposer des [[:sudo|droits d'administration]].
  * Disposer d'une connexion à Internet configurée et activée.
  * Avoir activé l'accès aux [[:depots#universe_et_multiverse|dépôts Universe et Multiverse]].

===== Installation =====

[[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt://mercurial|mercurial]]**.

testez que mercurial est bien installé : 

  hg version
  
Vous devriez obtenir quelque chose comme ça à la version près.

  Mercurial Distributed SCM (version 1.3.1)

  Copyright (C) 2005-2009 Matt Mackall <mpm@selenic.com> and others
  This is free software; see the source for copying conditions. There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
===== Configuration =====

Tout d'abord, créez un dossier où stocker nos repositories

  mkdir /var/hg/

créez les répertoires suivants : 
  
  mkdir /var/hg/repositories
  mkdir /var/hg/tools

copiez le fichier index.cgi de /var/hg-tools vers /var/hg/tools

  cp /var/hg-tools/index.cgi /var/hg/tools/index.cgi

<note help>Si vous ne trouvez pas index.cgi faites un 
  updatedb 
puis 
  locate index.cgi
</note>
===== Premier Repository =====

Votre premier repository : 

  mkdir /var/hg/repositories/mon_repo
  chown www-data:www-data /var/hg/repositories/mon_repo
  hg init /var/hg/repositories/mon_repo

<note info>
  mkdir /var/hg/repositories/mon_repo
Crée le répertoire
  chown www-data:www-data /var/hg/repositories/mon_repo
Attribue le répertoire à l'utilisateur d'apache2
  hg init /var/hg/repositories/mon_repo
Initialise le repository
</note>
[[:tutoriel:comment_modifier_un_fichier|créez le fichier]] **/var/hg/tools/hgweb.config** puis ajoutez les lignes suivantes : 

  [paths]
  mon_repo = /var/hg/repositories/mon_repo/

si vous créez un deuxième repository, même manipulation que pour le premier : 

  mkdir /var/hg/repositories/mon_repo2
  chown www-data:www-data /var/hg/repositories/mon_repo2
  hg init /var/hg/repositories/mon_repo2

[[:tutoriel:comment_modifier_un_fichier|éditez le fichier]] **/var/hg/tools/hgweb.config** pour avoir : 

  [paths]
  mon_repo = /var/hg/repositories/mon_repo/
  mon_repo2 = /var/hg/repositories/mon_repo2/

===== Désinstallation =====

Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez.
===== Liens =====

  * **(fr, en)** [[http://mercurial.selenic.com/wiki/|Site officiel de mercurial]]